In-game keybind editor - #8153
Conversation
|
(was built on top of #8143 and so is left in a draft state until that merges) |
e0a5c38 to
c85bfa9
Compare
…ng modal/dropdown
Delete them from the English source files, Transifex will take care of deleting them in other languages. |
|
Per review feedback, with the removal of the other tabs: Image removed as no longer really relevant |
|
Here marks the beginning of work refactoring the UX/implementation to meet WTF's stated desires during today's review session |
There was a problem hiding this comment.
For the absolutely enormous number of orders we have, they should be split out into a dedicated translation file.
Replaces the "info" tab with a keybind editor as the first tab of the Keys panel. Closes #396.
The shipped presets were uikeys files that included one another, so nothing outside the game could read them. They're now data, alongside a catalog of what's editable, so Chobby and the new lobby can build against the same contract. Catalog and profiles stay separate because a catalog entry is per action while a binding is per action and profile - the four shipped profiles share only 207 of the 381 actions they bind between them.
Two engine details explain most of the shape.
keyreloadclears the keymap before it loads, so a profile defines every binding rather than a delta. And two actions on one keyset are tried in the order they were bound, so an edit rewrites a binding where it sits instead of re-adding it at the end. Separately, the panel takes text ownership while it's open, oractionHandlerfires the keybind you're editing as you press it.Legacy still ships, so which build menu a profile implies is inferred from its bindings; that goes when Legacy does.
Updated video of the keybind editor UI/UX can be found in discord here.
8mb.video-71i-P3vAN9PQ.mp4
AI disclosure: written with assistance from Claude Code.